/**
 * File:     wiidevice.h
 * Authors:  Dominic Stalder, Thomas Bruederli
 *
 * Definition of the objective-c class that connects with the WiiRemoteFramework.
 *
 * This file is part of the Qt-based cross-platform Wii device driver.
 *
 * Copyright (C) 2009-2010, Dominic Stalder & Thomas Bruederli
 * Licensed under the GNU Lesser General Public License (LGPL) as published
 * by the Free Software Foundation at http://www.gnu.org/licenses/lgpl-3.0.txt
 *
 * $Id: wiidevice.h 5 2010-03-03 09:10:12Z roundcube $
 */

#include "WiiRemote.h"
#include "WiiRemoteDiscovery.h"
#include "wiidevicedriver.h"

/**
 * Definition of the wii device on mac os x.
 */
@interface WiiDevice : NSResponder /* <WiiRemoteDiscoveryDelegate, WiiRemoteDelegate> */
{
	WiiDeviceDriver *deviceDriver;
	WiiRemote *wiiDevice;
	WiiRemoteDiscovery *wiiDeviceDiscovery;
	int deviceType;
	double st_roll, st_pitch;
}

- (WiiDevice*) initWithCallback: (WiiDeviceDriver*) deviceDriver;
- (WiiDevice*) initWithCallbackAndType: (WiiDeviceDriver*) deviceDriver: (int)deviceType;

-(BOOL) connect;
-(void) disconnect;
-(void) setInstruction: (unsigned char) instruction;
-(void) setConnectionState: (BOOL) state;

@end
